﻿using System;
using System.Collections;
using Com.Enemy.EnemySystem.EnemyAI;
using Com.Enemy.EnemySystem.EnemyLifecycle;
using Com.Enemy.EnemySystem.Tools;
using Script.Com.Enemy.EnemySystem.EnemyAI;
using Script.EnemySystem.EnemyState;
using UnityEngine;

namespace Script.Com.Enemy.EnemySystem
{
    public class EnemyControllerBase : MonoBehaviour
    {
        protected EnemyBody body;
        protected Rigidbody2D rb;

        protected FollowPathAI followPathAi;
        protected bool isFollowPath;
        
        protected virtual void Awake()
        {
            rb = GetComponent<Rigidbody2D>();
            body = GetComponent<EnemyBody>();

            followPathAi = gameObject.AddComponent<FollowPathAI>();
        }

        private void Update()
        {
            MonsterAI();
        }

        protected virtual void MonsterAI()
        {
            
        }

        protected virtual void NormalAttack()
        {
            
        }

        protected virtual void DefenseAction()
        {
            
        }

        protected virtual void JumpAttack()
        {
            
        }
    }
}